const express =require('express');
const aaa = express.Router();
const noteModel = require('../db/model/noteModel');
const userModel = require('../db/model/userModel');
const verifyFn = require('../middlewares/verify');
const md5 = require('md5');

aaa.post('/addnote',(req,res)=>{
    
    // 接收请求数据
    // console.log(req.body);
    let {title,content} = req.body;

    // 提交到数据库
    noteModel.create({
        title,
        content
    }).then(val=>{
        console.log(val);
        res.send('成功');
    })

})

aaa.get('/delnote/:_id',verifyFn,(req,res)=>{
    
    // 获取到要删除的数据id
    let {_id} = req.params;

    noteModel.deleteOne({_id}).then(val=>{
        res.send('删除成功');
    })
})

aaa.post('/updatenote',(req,res)=>{

    // 获取到表单数据
    let {id,title,content} = req.body;

    // 修改？ 修改哪条？
    noteModel.updateOne({_id:id},{
        title,
        content
    }).then(val=>{
        // console.log(val);
        res.send('修改成功');
    })
})

// 注册用户路由
aaa.post('/register',(req,res)=>{
    // 获取到前端发来的数据
    let {username,pwd} = req.body;

    // 对象模型 - 
    userModel.create({
        username,
        pwd:md5(pwd)
    }).then(val=>{
        res.send('注册成功')
    })
})

// 登录路由
aaa.post('/login',(req,res)=>{

    // 获取到发送来的数据
    let {username,pwd} = req.body;

    userModel.find({username,pwd:md5(pwd)}).then(val=>{
        // console.log(val.length);
        // res.send('长度'+ val.length);

        if(val.length){
            // 登录成功
            // 注册session
            req.session.username = username;
            req.session.userid = val[0]._id;

            res.render('jump.html',{info:"登录成功"});
        }else{
            res.redirect('/login');
        }
    })


})

// 退出登录
aaa.get('/logout',(req,res)=>{
    req.session.destroy(()=>{
        res.send('退出成功');
    })
});

module.exports = aaa;